package chat_server;

import for_all.User;
import java.awt.Color;
import java.awt.Component;
import javax.swing.BorderFactory;
import javax.swing.JLabel;
import javax.swing.JList;
import javax.swing.ListCellRenderer;

public class UserListCellRenderer extends JLabel implements ListCellRenderer {
 
  @Override
  public Component getListCellRendererComponent(JList list, Object value,
      int index, boolean isSelected, boolean cellHasFocus) {

    
    User user = (User) value;

    // Name der Person wird als Text gesetzt
    this.setText(user.toString());
    
    // Muss aufgerufen werden ansonsten hat this.setBackground keine Wirkung
    this.setOpaque(true);
    

    // Border setzenn
    super.setBorder(BorderFactory.createLoweredBevelBorder());
    
    // Hintergrund
    if (!isSelected) {         
        if (user.getOnline()) {
            this.setBackground(Color.green);
        } else {
            this.setBackground(Color.red);
        }
    } else {
        this.setBackground(new Color(184,207,229));
    }
    
    // Das Label wird zurückgegeben und nun angezeigt
    return this;
  }
    
}
